import {
  mapGetters
} from "vuex"
export default {
  computed: {
    //映射了m_cart.js仓库里面的totalCount属性
    ...mapGetters('m_cart', ['totalCount'])

  },

  watch: {
    //不可行：watch监听器，监听totalCount 的变化
    // totalCount(newValue) {
    //   //当totalCount 一变化就重新调用setBadge（）方法
    //   this.setBadge()
    // }
    // 监听 Vuex 的 cart 数据
    '$store.state.m_cart.cart': {
      handler() {
        this.setBadge(); // 购物车变化时更新徽标
      },
      deep: true // 确保监听到 cart 内部对象变化
    }
  },
  onShow() {
    //在页面刚展示的时候，设置数字徽标
    this.setBadge()
  },
  methods: {
    setBadge() {
      //调用 uni.setTabBarBadge()方法，为购物车设置右上角的徽标
      uni.setTabBarBadge({
        //索引
        index: 2,
        //注意：text的值必须是字符串，不能是数字
        text: this.totalCount + ''
      })
    }
  }
}